const mysql = require('mysql2/promise');

async function cleanAndRecreateRounds() {
    let connection;

    try {
        // 数据库连接配置
        const dbConfig = {
            host: 'localhost',
            user: 'root',
            password: '123456',
            database: 'nextjs',
            charset: 'utf8mb4'
        };

        console.log('🔌 连接到数据库...');
        connection = await mysql.createConnection(dbConfig);
        console.log('✅ 数据库连接成功');

        // 清理所有期数数据
        console.log('\n🗑️ 清理所有期数数据...');

        // 清理赤壁期数
        await connection.execute('DELETE FROM casino_chibi_rounds');
        console.log('✅ 赤壁期数数据已清理');

        // 清理大小期数
        await connection.execute('DELETE FROM casino_dice_rounds');
        console.log('✅ 大小期数数据已清理');

        // 清理赤壁下注数据
        await connection.execute('DELETE FROM casino_chibi_bets');
        console.log('✅ 赤壁下注数据已清理');

        // 清理大小下注数据
        await connection.execute('DELETE FROM casino_dice_bets');
        console.log('✅ 大小下注数据已清理');

        // 清理系统消息
        await connection.execute('DELETE FROM system_messages WHERE content LIKE "%游乐场%" OR content LIKE "%三国鸭%"');
        console.log('✅ 相关系统消息已清理');

        console.log('\n🎉 数据清理完成！');
        console.log('现在重启服务器，定时任务会自动创建新的期数');
        console.log('新期数将使用UTC时间，确保时间计算的一致性');

    } catch (error) {
        console.error('❌ 清理失败:', error);
    } finally {
        if (connection) {
            await connection.end();
            console.log('🔌 数据库连接已关闭');
        }
    }
}

// 运行清理
cleanAndRecreateRounds()
    .then(() => {
        console.log('✅ 清理脚本执行完成');
        process.exit(0);
    })
    .catch((error) => {
        console.error('❌ 清理脚本执行失败:', error);
        process.exit(1);
    });
